

// 获取根元素
const root = document.documentElement;

// 获取计算后的样式
const style = getComputedStyle(root);

// 获取CSS变量的值 主色
const primaryColor = style.getPropertyValue('--primary-color').trim();





//轻量级提示框配置
var toastr;
toastr.options = {
    closeButton: true,//显示关闭按钮
    debug: false,
    progressBar: true,//显示进度条
    positionClass: "toast-bottom-right",//位置
    onclick: null,//点击消息框自定义事件
    showDuration: "300",//显示动作时间
    hideDuration: "3000",//隐藏动作时间
    timeOut: "2000",//显示时间,0为永久显示
    extendedTimeOut: "1000",//鼠标移动过后显示显示时间
    showEasing: "swing",
    hideEasing: "linear",
    showMethod: "fadeIn",//显示方式
    hideMethod: "fadeOut"//隐藏方式
};


function toastr_success(message, callback) {
    toastr.success(message, "消息", {
        onHidden: callback
    });
}

function toastr_error(message) {
    toastr.error(message, "错误", {
        timeOut: 6000,
    });
}

/**数据递归children 结构的数组 */
function dataToTree(data) {
    let result = []
    if (!Array.isArray(data)) {
        return result
    }
    data.forEach(item => {
        delete item.children;
    });
    let map = {};
    data.forEach(item => {
        map[item.id] = item;
    });
    data.forEach(item => {
        let parent = map[item.pid];
        if (parent) {
            (parent.children || (parent.children = [])).push(item);
        } else {
            result.push(item);
        }
    });
    return result;
}

/**Layui Tree 选中的ID */
function getTreeCheckedIds(jsonobj) {

    var id = "";
    $.each(jsonobj, function (index, item) {
        if (id != '') {
            id = id + ',' + item.id;
        }
        else {
            id = item.id;
        }
        if (typeof (item.children) != 'undefined') {
            var i = getTreeCheckedIds(item.children)
            if (i != '') {
                id = id + ',' + i;
            }
        }
    })
    return id;
}


/**
 * 获取全选的checkbox
 * @returns 
 */
function getAllChkIds() {
    var item = $('.item_checkbox:checked');
    var ids = "";
    $.each(item, function (i, v) {
        ids += $(this).val() + ',';
    })
    return ids.substring(0, ids.length - 1);
}


/** */
layui.use(function () {

    var $ = layui.jquery;
    var form = layui.form;

    //dropdown
    $(document).on('click', '.rc-dropdown', function (e) {

        if (!$('.rc-dropdown-content:visible').is($(this).find('.rc-dropdown-content'))) {
            $('.rc-dropdown-content').hide();
        }
        if (e.target.className != 'add_widget') {
            e.stopPropagation();
        }
        var dropdownContent = $(this).find(".rc-dropdown-content");
        if (!dropdownContent.is(":visible")) {
            dropdownContent.show();

            var elementOffset = dropdownContent.offset();
            var elementWidth = dropdownContent.outerWidth(true);
            if (elementOffset.left + elementWidth > $(window).width()) {
                dropdownContent.css({ "right": 0 });
            }

            console.log(elementOffset);


        }

    })

    $(document).on('click', ':not(.rc-dropdown)', function (e) {

        if (e.target.className != 'add_widget'
        ) {
            var dropdownContent = $('header').find(".rc-dropdown-content");
            if (dropdownContent.is(":visible")) {
                dropdownContent.hide();
            }
        }


    });

    //全选取消全选
    form.on('checkbox(checkAll)', function (data) {
        var elem = data.elem; // 获得 checkbox 原始 DOM 对象
        var item = $('.item_checkbox');
        $.each(item, function (i, v) {
            $(this).prop('checked', elem.checked);
        })

        form.render('checkbox');
    });

    //返回上一页
    $('.goback').click(function () {
        window.history.back();
    });


    // tips事件
    var rc_tip_lay;
    $('.rc-tips').mouseenter(function () {
        var message = $(this).attr('message');
        rc_tip_lay = layer.tips(message, this, {
            tips: [3, primaryColor],
            time: 0
        });
    });
    $('.rc-tips').mouseleave(function () {
        layer.close(rc_tip_lay);
    });


    //菜单展开收起
    $('.menu').find('.icon-xiala').click(function () {
        if ($(this).hasClass('shou')) {
            $(this).removeClass('shou');
            $(this).parent().parent().find('.sec_menu_box').show();
        }
        else {
            $(this).addClass('shou');
            $(this).parent().parent().find('.sec_menu_box').hide();
        }

    })

});






